<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <style>
    
  </style>
</head>
<body>
  
</body>
<script>

  // var a = 10;
  // var b = 3;
  // console.log( a + b );
  // console.log( a - b );
  // console.log( a * b );
  // console.log( a / b );
  // console.log( a % b );
  // console.log( a ** b );

  // var a = "10";
  // var b = 3;
  // console.log( a + b );
  // console.log( a - b );
  // console.log( a * b );
  // console.log( a / b );
  // console.log( a % b );
  // console.log( a ** b );

  // var a = "10";
  // var b = "3";
  // console.log( a + b );
  // console.log( a - b );
  // console.log( a * b );
  // console.log( a / b );
  // console.log( a % b );
  // console.log( a ** b );

  // +号：两边只要有一边是字符(不是数值)，运算规则就是字符串拼接，运算结果类型必然是字符

  // -*/%**：不论两边是否是数值，运算规则都是数值运算，运算结果类型必然是数值

  // var a = "hello";
  // var b = "world";
  // console.log( a + b );
  // console.log( a - b );
  // console.log( a * b );
  // console.log( a / b );
  // console.log( a % b );
  // console.log( a ** b );
  
  // var a = {};
  // var b = function(){};
  // console.log( a + b );
  // console.log( a - b );
  // console.log( a * b );
  // console.log( a / b );
  // console.log( a % b );
  // console.log( a ** b );

  // var a;
  // var b = 1;
  // console.log( a + b );
  // console.log( a - b );
  // console.log( a * b );
  // console.log( a / b );
  // console.log( a % b );
  // console.log( a ** b );

  // var a = 1;
  // var b = null;
  // console.log( a + b );
  // console.log( a - b );
  // console.log( a * b );
  // console.log( a / b );
  // console.log( a % b );
  // console.log( a ** b );

  // var a = 1;
  // var b = NaN;
  // console.log( a + b );
  // console.log( a - b );
  // console.log( a * b );
  // console.log( a / b );
  // console.log( a % b );
  // console.log( a ** b );

  // null可以作为0使用
  // undefined不能作为数值使用
  // NaN表示错误的数值，参与运算后必然得到NaN

  
</script>
</html>